home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / PLUS4 / plus4disk2.d64 / ch4.03 flip < prev    next >
Text File  |  2009-01-03  |  7KB  |  75 lines

  1. Ç*NB"1:CH4.03  FLIP"            "1:CHX INTRO"   "1:CHX.XX"
  2. Ç*SP0:LM8:RM62:PP66:PG59
  3. Ç*VP3:HL8:HR72:HD0:├16/+4: ╞╠╔╨╙                       ,,╙ECTION XX
  4. Ç*HS2:------------------------------------,,----------
  5. Ç*FT0:-----------------------,,----------
  6. Ç*FS3:(C) 1984 ┼LIZABETH ─EAL,,         Ç#
  7. ╙ECTION
  8. Ç*LN2:CN1;╒╨╙╔─┼-─╧╫╬ ╠┼╘╘┼╥╙Ç*LN2:CN0
  9.      ├LOSE YOUR EYES AND THINK OF ALL THE TIMES YOU WANTED TO PRINT SOMETHING UPSIDE DOWN. ╘HE WISH IS GRANTED. ╘HIS PROGRAM IS A BUILDING BLOCK TO DO JUST THAT.
  10.  
  11.      ╔N ADDITION, THIS SECTION FURTHER EXPLORES INNER DEPTHS OF THE MACHINE AND PROVIDES MEANS OF EXPERIMENTING FOR THE PURPOSE OF LEARNING.
  12.  
  13. // PRG: FLIP //
  14.  
  15. Ç*FP8
  16. ***  ╓┴╥╔┴┬╠┼╙  ***
  17.  
  18. ┴─   ADDRESS OF OUR CHARACTER SET
  19. ┴┴   ADDRESS OF A CHANGED CHARACTER
  20. ╩    COUNTER FOR VARIOUS THINGS
  21. ╔$   KEYBOARD INPUT
  22. ┴    SAME THING IN ┴╙├╔╔ CODE
  23. ┼╥   ERROR NUMBER
  24.  
  25. ***  ╔╬╙╘╥╒├╘╔╧╬╙ ***
  26.  
  27.      ╘HE CODE IS RELATED TO THE ╬┼╫ ├╚┴╥ PROGRAM SHOWN EARLIER. ┘OU WILL NEED TO TRANSFER THE CHARACTERS FROM ONE PLACE TO ANOTHER USING THE BUILT-IN MACHINE LANGUAGE MONITOR. ┴ REMINDER ABOUT HAVING TO TALK WITH THE MONITOR IS IN THE FIRST ╥┼═ LINE. ╔F YOU HAVEN'T READ THE ╬┼╫ ├╚┴╥ SECTION AND NEED INSTRUCTIONS, DO SO NOW.
  28.      
  29.      ╔N LINE 160 TYPE ├╠┼┴╥-THE-SCREEN CHARACTER AND ONE CURSOR DOWN. IN LINE 190 TYPE ╚╧═┼ AND FOUR CURSOR-DOWN CHARACTERS, FOLLOWED BY THE THINGS YOU SEE AND THREE SPACES.
  30.  
  31.      ╘O WORK THE PROGRAM, ANSWER THE QUESTION: WHICH LETTER OR NUMBER DO YOU WANT TO SEE-UPSIDE DOWN. ╘O PERMIT YOU AN EASY EXIT OUT OF ALL THIS TROUBLE, IF YOU TYPE A CHARACTER THAT IS NOT ON THE LIST IN QUOTES IN LINE 160 THE PROGRAM QUITS AND EVERYTHING IS RESET BACK TO NORMAL.
  32.      
  33.      ╧THERWISE THE CHARACTERS KEEP TUMBLING UNTIL YOU PRESS ANY KEY, WHICH GETS YOU BACK TO THE START - THE PROMPT FOR THE NEXT LETTER TO INVERT.
  34.      
  35. ***  ─┼╘┴╔╠╙  ***
  36.      
  37.      ╠INES 170-180 LIST THE CHARACTERS ON TOP OF THE SCREEN. ╠INES 200-210 CHECK IF YOUR CHOSEN CHARACTER IS LEGAL. ╠INE 220 CALCULATES THE ADDRESS OF THE CHARACTER USING THE SCREEN CODES FOR LETTERS (1-26) AND NUMBERS (48-57).
  38.      
  39.      ╚ERE WE GO. ╘HERE IS A LOOP, WITH INDEX ╔, THAT SPANS LINES 230-260. ╔T PROCESSES EACH CHARACTER TWICE. ╘HE FIRST THING THAT HAPPENS IS IN A LITTLE ╩-LOOP IN LINE 240: WE REMEMBER WHAT THE ORIGINAL VALUES WERE IN AN ARRAY ╓. ╘HEN ANOTHER ╩-LOOP PUTS THOSE VALUES IN THE BACKWARD ORDER. ╞INALLY, A LITTLE ╦-LOOP DELAYS FOR SOME ONE HUNDRED UNITS. ╧N THE SECOND PASS THROUGH THE ╔-LOOP EVERYTHING IS RESTORED BACK TO NORMAL.
  40.      
  41.      ╫HEN THAT'S DONE, IF YOU HAVEN'T PRESSED ANY KEYS, WE KEEP FLIPPING. ╔F YOU DID, WE GO BACK FOR MORE INPUT.
  42.      
  43. ***  ╨╥╧╩┼├╘╙  ***
  44.      
  45.      ╔T'S NICE TO LEAVE THE HOUSE IN ORDER WHEN YOU HAVE MADE A MESS, BUT THAT'S NOT WHAT YOU MAY HAVE IN MIND. ╙O, IF YOU'RE WILLING TO TAKE SOME RISKS IN EXPERIMENTING WITH THE IDEA, YOU COULD REDEFINE ALL THE CHARACTERS AND NOT RESTORE THEM  BACK TO THE ORIGINAL. ╘HEN YOU COULD TRY TO LEARN TYPING UPSIDE DOWN, WHICH IS A GREAT AND USEFUL SKILL TO HAVE. ╬EWSPAPERS NEED THIS SORT OF PEOPLE.
  46.      
  47.      ┘OU COULD GO AFTER REDESIGNING SOME OF THE GRAPHIC CHARACTERS ON THE KEYBOARD. ┘OU WILL NEED TO SWITCH TO GRAPHIC MODE. ┘OU COULD THEN USE SEVERAL CHARACTERS FOR NEAT VISUAL DISPLAYS OF CHARACTERS THAT DON'T EVEN EXIST ON THE KEYBOARD. ─O THAT BY FLIPPING BETWEEN THEM VERY, VERY FAST. ╚OPE YOU LIKE THE SHOW.
  48.      
  49.      ╔F YOU FORGOT WHAT THE MAGIC NUMBERS OF CHARACTERS ON THE SCREEN ARE, YOU CAN LOOK IN THE ╬┼╫ ├╚┴╥ PROGRAM.
  50.      
  51. ***  ┴╠╘┼╥╬┴╘╔╓┼╙ ╞╧╥ ╨╠╒╙ 4  ***
  52.      
  53.      ╘HIS MATERIAL IS FOR FUTURE REFERENCE. ╔T'S USEFUL, BUT A BIT MORE ADVANCED.
  54.  
  55.      ╔N THE PREVIOUS VERSION WE MOVED THE CHARACTERS FROM HEX $─000 TO $3000. ╔F YOU HAVE A ╨╠╒╙ 4 MACHINE YOU COULD MOVE THEM TO, FOR INSTANCE, HEX $7000. ╠ET'S DO IT. ╞OLLOW THE SAME ═ONITOR INSTRUCTIONS, BUT INSTEAD OF TYPING 3000 AS THE DESTINATION ADDRESS, TYPE 7000.
  56.      
  57.      ┴S WAS THE CASE IN ╬┼╫ ├╚┴╥ PROGRAM, LINE 130 SIMPLY TELLS THE COMPUTER TO NOT ALLOW ┬┴╙╔├ TO WRITE OVER THE AREA WHERE WE PUT THE CHARACTERS. ┘OU MAY CHANGE THE "48" TO "112" IN LINE 130, ┴─ IN LINE 140 TO "7*4096+4*256" AND THE LAST THING IN ─┼├ FROM "35" TO "75" IN LINE 150. ┘OU DON'T HAVE TO DO IT, BUT THIS SHOWS HOW YOU CAN PLACE CHARACTERS IN A DIFFERENT PLACE WHEN THE COMPUTER IS LARGER.
  58.  
  59.      ╘HE ADVANTAGE IS THAT THIS WILL GIVE YOU LOTS MORE MEMORY TO PLAY WITH, 16╦, TO BE EXACT, AND YOU WILL BE ABLE TO COMBINE GRAPHIC MODES WITH REDEFINED CHARACTERS.
  60.      
  61.      ╘HE $7000 NUMBER IS ARBITRARY, THE CHARACTERS CAN GO ANYPLACE, BUT THEY ARE MOST EASILY ACCESSED FROM ┬┴╙╔├ WHEN THEIR ADDRESS IS UNDER $8000 (DECIMAL 32768).
  62.  
  63.      ╔F YOU ARE CURIOUS ABOUT THE INSIDES OF A COMPUTER, YOU CAN DO SOMETHING FANTASTIC. ┴FTER YOU HAVE TOLD THE CHARACTERS TO LIVE AT HEX $7000, GET INTO A ╟╥┴╨╚╔├1 MODE, BUT ─╧ ╬╧╘ ╘┘╨┼ "╟╥┴╨╚╔├1,1" . ╔NSTEAD, TYPE ╟╥┴╨╚╔├1. ╘HE GRAPHIC SCREEN WILL NOT CLEAR. ┘OU WILL BE ABLE TO SEE ALL SORTS OF OLD COMPUTER GARBAGE WHERE THE HIGH-RESOLUTION PICTURE HAS NOW PLACED ITSELF. ╔T WILL BE THE CHARACTER SET THAT YOU HAVE MOVED TO THE HEX $3000 AREA. ┼NJOY THE SIGHT AND THINK ABOUT ALL THE NEAT THINGS YOU COULD DO KNOWING THIS NEW INFORMATION.
  64.      
  65.      ╘HIS MATERIAL MAY BE DIFFICULT AT THE MOMENT. ╔T IS BEGINNING TO BORDER ON LEARNING ABOUT MEMORY MANAGEMENT, MACHINE CODE AND OTHER SUCH THINGS. ╔F THE CURIOSITY IS GETTING YOU, READ UP ON IT. ╥EAD MEMORY MAPS PUBLISHED IN MAGAZINES SUCH AS THE ╘RANSACTOR. ╘HERE IS EVEN A LITTLE MEMORY MAP IN THE MANUAL. ╥EAD ╩IM ┬UTTERFIELD'S BOOK, HIS MEMORY MAPS ARE THE BEST, AND THE BOOK EXPLAINS ABOUT MATTERS RELATED TO WHAT WE HAVE JUST LOOKED AT.
  66.      
  67. ***  ╠╧┴─╔╬╟ ╘╚┼ ├╚┴╥┴├╘┼╥╙  ***
  68.      
  69.      ╘HE METHOD OF GETTING AT THE CHARACTERS IN ╥┴═ WE HAVE USED SO FAR IS JUST FINE FOR EXPLORATION. ╔T CANNOT BE USED IN A FINISHED PROGRAM (WHATEVER THAT IS!) AS YOU CAN'T REQUIRE THE USERS OF YOUR PROGRAMS TO HAVE TO USE THE ═╧╬╔╘╧╥. ┘OU COULD USE THE ╨┼┼╦ TRICK YOU HAVE SEEN BEFORE, BUT IT IS PAINFULLY SLOW. ╘HERE IT A BETTER WAY:                                                                 
  70.      ╧NCE YOU HAVE RUN A PROGRAM WITH DEFINED CHARACTERS, ENTER THE MONITOR AND SAVE THEM. ╙AVING INSTRUCTIONS ARE IN THE SECTION ABOUT GENERAL SAVING AND LOADING OF ANY MEMORY. ╫HEN THE CHARACTERS ARE NEEDED IN THE FUTURE, LOAD THEM FROM WITHIN A RUNNING PROGRAM, FOLLOWING THE SUGGESTIONS ALSO IN THAT SECTION.
  71.      
  72.      ╔T MAY SEEM AT FIRST LIKE A LOT OF HASSLE, BUT WHEN YOU DO IT SEVERAL TIMES IT BECOMES SECOND NATURE.
  73.      
  74.      ╘HE FINAL STEP IS TO SWITCH THE CHARACTERS IN AND OUT, OF COURSE, AS WE HAVE DONE ABOVE. ╩UST BORROW THE RELEVANT CODE LINES FROM THIS PROGRAM AND YOU'RE ON YOUR WAY TO FANCY GRAPHICS.
  75.